/******************************************************************************
* ++
* Author: BaoTD1
* Module Name : CBoardCell2D.h
*
* Description : Declares the CBoard Cell 2D Windows Form
*
*
* Mod. History :	03/Dec/2012		 - BaoTD1
*                             File first created
*                             CR# PROJECT
*
*
* --
******************************************************************************/
#pragma once
#ifndef CBoardCell2D_H
#define CBoardCell2D_H

#include "cboardcell.h"

#define WHITE RGB(255, 255, 255)
#define GRAY RGB(236, 233, 216)


class CBoardCell2D : public CBoardCell
{

	private:
	 ULONG_PTR m_gdiplusToken; // GDI+ propertive
private:
	Color m_initColor;
	Color m_hoverColor;
	Color m_mouseClickColor;
public:
	CBoardCell2D(void);
	CBoardCell2D(int nCellID, Color CellColor, int nWidth, int nHeight);
	~CBoardCell2D(void);

	void setInitColor( Color initColor );
	void setHoverColor( Color initColor );
	void setMouseClickColor( Color initColor );

	Color getInitColor(  );
	Color getHoverColor(  );
	Color getMouseClickColor(  );

	BOOL CreateBoardCell( const RECT& rect, CWnd* pParentWnd );

	void DrawButtonLeft(Graphics*graphic, RECT rect);

	// Event handler
    afx_msg void OnPaint();
	 afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
	afx_msg void OnMouseMove( UINT, CPoint );
	afx_msg void OnLButtonDown(UINT wParam, CPoint pos);
//	afx_msg void OnLButtonUp(UINT wParam, CPoint pos);
public:
	DECLARE_MESSAGE_MAP()

};

#endif
